package com.zzyl.nursing.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zzyl.nursing.domain.FamilyMemberElder;
import com.zzyl.nursing.dto.DeviceDto;
import com.zzyl.nursing.dto.MemberElderDto;
import com.zzyl.nursing.vo.DeviceDataGraphVo;
import com.zzyl.nursing.vo.FamilyMemberElderVo;
import com.zzyl.nursing.vo.MemberElderVo;

import java.util.List;
import java.util.Map;


/**
 * @Description IFamilyMemberElderService
 * @Author LaiShidong
 * @Date 2025-03-02  16:16
 */
public interface IFamilyMemberElderService  extends IService<FamilyMemberElder> {

    /**
     * 小程序绑定家人
     * @param memberElderDto
     */
    void addFamily(MemberElderDto memberElderDto);

    /**
     * 小程序查询家人列表
     * @return
     */
    List<FamilyMemberElderVo> queryFamily();

    /**
     * 小程序分页查询家人列表
     * @param pageNum
     * @param pageSize
     * @return
     */
    List<MemberElderVo> pageList(Integer pageNum, Integer pageSize);

    /**
     * 查询健康数据
     * @param deviceDto
     */
    Map<String, Map<String, Object>> queryDevicePropertyStatus(DeviceDto deviceDto);

    /**
     * 按天统计查询指标数据
     * @param functionId
     * @param startTime
     * @param endTime
     * @param iotId
     * @return
     */
    List<DeviceDataGraphVo> queryDeviceDataListByDay(String functionId, Long startTime, Long endTime, String iotId);

    /**
     * 按周统计查询指标数据
     * @param functionId
     * @param startTime
     * @param endTime
     * @param iotId
     * @return
     */

    List<DeviceDataGraphVo> queryDeviceDataListByWeek(String functionId, Long startTime, Long endTime, String iotId);

}
